package com.example.schoolblog.blog.Controller;

import com.example.schoolblog.blog.Dto.NotificationDTO;
import com.example.schoolblog.blog.Enums.NotificationTypeEnum;
import com.example.schoolblog.blog.Model.User;
import com.example.schoolblog.blog.Service.NotificationService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;

import javax.servlet.http.HttpServletRequest;

@Controller
public class NotificationController {
    @Autowired
    private NotificationService notificationService;

    @GetMapping("/notification/{id}")
    public String notification(HttpServletRequest request,
                               @PathVariable(name="id") Long id){
        User user =(User) request.getSession().getAttribute("user");
        if(user == null){
            return "redirect:/";
        }
        NotificationDTO notificationDTO = notificationService.read(id,user);
        if(NotificationTypeEnum.REPLY_COMMENT.getType() == notificationDTO.getType()
                || NotificationTypeEnum.REPLY_QUESTION.getType() == notificationDTO.getType()){
            return "redirect:/question/"+ notificationDTO.getOuterid();
        }else{
            return "redirect:/";
        }

    }
}
